#ifndef __BLDC_change_
#define __BLDC_change_
#include "hal_uart.h"
#include "HAL_device.h" // Device header
#include "hal_gpio.h"
//#include "Whole_Motor_Structure.h"
#include "hal_rcc.h"
#include "Whole_Motor_Parameters.h"
//#include "Sin_table.h"
#include <stdio.h>
#include "motor_status.h"
uint32_t get_modulation_value(void);
void clear_max_flag(void);
void clear_min_flag(void);
void BLDC_motor_modulation_value_set(uint32_t modulation);
void motor_status_change_auto(void);
void compare_init(void);
uint32_t get_compare_now(char pole_status);
void BLDC_change_mode_compare(void);
void motor_status_change_check_and_set(void);
void motor_status_change_with_out_check(void);
void adc_flag_set_and_check_status(void);
void speed_flag_set_and_check_status(void);
void motor_status_set(char u_status, char v_status, char w_status);
uint32_t get_mid_compare_now(char pole_status);
void BLDC_mid_change_mode_compare(void);
#endif
